home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / include / linux / if_frad.h < prev    next >
C/C++ Source or Header  |  2009-10-16  |  3KB  |  128 lines

  1. /*
  2.  * DLCI/FRAD    Definitions for Frame Relay Access Devices.  DLCI devices are
  3.  *        created for each DLCI associated with a FRAD.  The FRAD driver
  4.  *        is not truly a network device, but the lower level device
  5.  *        handler.  This allows other FRAD manufacturers to use the DLCI
  6.  *        code, including its RFC1490 encapsulation alongside the current
  7.  *        implementation for the Sangoma cards.
  8.  *
  9.  * Version:    @(#)if_ifrad.h    0.15    31 Mar 96
  10.  *
  11.  * Author:    Mike McLagan <mike.mclagan@linux.org>
  12.  *
  13.  * Changes:
  14.  *        0.15    Mike McLagan    changed structure defs (packed)
  15.  *                    re-arranged flags
  16.  *                    added DLCI_RET vars
  17.  *
  18.  *        This program is free software; you can redistribute it and/or
  19.  *        modify it under the terms of the GNU General Public License
  20.  *        as published by the Free Software Foundation; either version
  21.  *        2 of the License, or (at your option) any later version.
  22.  */
  23.  
  24. #ifndef _FRAD_H_
  25. #define _FRAD_H_
  26.  
  27. #include <linux/if.h>
  28.  
  29. /* Structures and constants associated with the DLCI device driver */
  30.  
  31. struct dlci_add
  32. {
  33.    char  devname[IFNAMSIZ];
  34.    short dlci;
  35. };
  36.  
  37. #define DLCI_GET_CONF    (SIOCDEVPRIVATE + 2)
  38. #define DLCI_SET_CONF    (SIOCDEVPRIVATE + 3)
  39.  
  40. /* 
  41.  * These are related to the Sangoma SDLA and should remain in order. 
  42.  * Code within the SDLA module is based on the specifics of this 
  43.  * structure.  Change at your own peril.
  44.  */
  45. struct dlci_conf {
  46.    short flags;
  47.    short CIR_fwd;
  48.    short Bc_fwd;
  49.    short Be_fwd;
  50.    short CIR_bwd;
  51.    short Bc_bwd;
  52.    short Be_bwd; 
  53.  
  54. /* these are part of the status read */
  55.    short Tc_fwd;
  56.    short Tc_bwd;
  57.    short Tf_max;
  58.    short Tb_max;
  59.  
  60. /* add any new fields here above is a mirror of sdla_dlci_conf */
  61. };
  62.  
  63. #define DLCI_GET_SLAVE    (SIOCDEVPRIVATE + 4)
  64.  
  65. /* configuration flags for DLCI */
  66. #define DLCI_IGNORE_CIR_OUT    0x0001
  67. #define DLCI_ACCOUNT_CIR_IN    0x0002
  68. #define DLCI_BUFFER_IF        0x0008
  69.  
  70. #define DLCI_VALID_FLAGS    0x000B
  71.  
  72. /* FRAD driver uses these to indicate what it did with packet */
  73. #define DLCI_RET_OK        0x00
  74. #define DLCI_RET_ERR        0x01
  75. #define DLCI_RET_DROP        0x02
  76.  
  77. /* defines for the actual Frame Relay hardware */
  78. #define FRAD_GET_CONF    (SIOCDEVPRIVATE)
  79. #define FRAD_SET_CONF    (SIOCDEVPRIVATE + 1)
  80.  
  81. #define FRAD_LAST_IOCTL    FRAD_SET_CONF
  82.  
  83. /*
  84.  * Based on the setup for the Sangoma SDLA.  If changes are 
  85.  * necessary to this structure, a routine will need to be 
  86.  * added to that module to copy fields.
  87.  */
  88. struct frad_conf 
  89. {
  90.    short station;
  91.    short flags;
  92.    short kbaud;
  93.    short clocking;
  94.    short mtu;
  95.    short T391;
  96.    short T392;
  97.    short N391;
  98.    short N392;
  99.    short N393;
  100.    short CIR_fwd;
  101.    short Bc_fwd;
  102.    short Be_fwd;
  103.    short CIR_bwd;
  104.    short Bc_bwd;
  105.    short Be_bwd;
  106.  
  107. /* Add new fields here, above is a mirror of the sdla_conf */
  108.  
  109. };
  110.  
  111. #define FRAD_STATION_CPE    0x0000
  112. #define FRAD_STATION_NODE    0x0001
  113.  
  114. #define FRAD_TX_IGNORE_CIR    0x0001
  115. #define FRAD_RX_ACCOUNT_CIR    0x0002
  116. #define FRAD_DROP_ABORTED    0x0004
  117. #define FRAD_BUFFERIF        0x0008
  118. #define FRAD_STATS        0x0010
  119. #define FRAD_MCI        0x0100
  120. #define FRAD_AUTODLCI        0x8000
  121. #define FRAD_VALID_FLAGS    0x811F
  122.  
  123. #define FRAD_CLOCK_INT        0x0001
  124. #define FRAD_CLOCK_EXT        0x0000
  125.  
  126.  
  127. #endif
  128.